Streaming media content such as music and video over mobile networks is increasing and more providers of such content are appearing on the market. Dynamic Adaptive Streaming over HTTP, DASH, is one standardized solution for providing rate adaptive video streaming. The client based rate adaptation in DASH is typically based on the throughput during download. If the recent download throughputs are high, the media client, such as a video client, requests next segments with higher bit rate. In other cases the client will request next segments with lower bit rate. Rate adaptation can be assisted by the network with improved performance as the network has better view of the current resource situation. Analysis by the inventors have shown that network assisted rate adaptation can achieve better capacity than purely client based rate adaptation.
In order to smooth the DASH downloading, the DASH client employs a client video playback buffer to store the video segments. The client buffer is typically pre-configured with a limited client video playback buffer size. The buffer may have a minimum (or lower) level and a maximum (or upper) level respectively. The client requests typically media up to the maximum (or upper) level at startup. The downloaded media segments are stored in the buffer and video playback is started when the minimum level is reached. The segment is composed of multiple adjacent video frames in time period of seconds. The rate adaptation is executed at the segment level.
One problem that users might experience during media streaming such as video streaming is that the playback might freeze due to buffer underrun. One of the reasons behind this is a user plane interruption caused by handover. That is, when the user moves out of the coverage of one cell (the serving cell) and in to another cell (the target cell) she will experience a handover to the new cell. Prior to such a handover, and after the handover has been performed, the user data throughput may be smaller than the current playback rate of the streamed content, and hence the media buffer runs empty or being playback with low rate and quality.
In particular cases, such as in Long Term Evolution, LTE, networks, the UE experiences hard handover, which means that the UE disconnects from the serving cell and establish a new connection to the target cell when handover is triggered. A UE could experience noticeable interruptions of the connection during the handover.
One way to counter the problems with handover is to step down to a lower rate by rate adaptation. A bit rate reduction might however not be enough to cope with the interruption and reduced throughput caused by the handover if the handover interruption period is long. Moreover, the rate adaptation may be not fast enough and the bit rate reduction will therefore not be enough to compensate for the decreasing radio channel quality.
Furthermore, due to potential fast throughput degradation along with larger media segments, which cause a low rate adaptation frequency, the client rate adaptation may make a severe mistake in the selection of the video rate in its adaptation. Hence, one drawback with client adaption and buffer management in a mobile network with handover, or some other similar low rate periods, is that the video quality is likely to be low in handover areas due to the low video rate to cater for the throughput degradation.
Another drawback is that the size of the client buffer typically is pre-configured with a pre-set and limited UE media/video playback buffer size. The pending media downloaded to the client/UE buffer may not be enough to cover the possible interruption caused by the handover and the low throughput prior, during, and after handover. The length of this time period depends on the quality of user radio connection in the serving cell and the system load in the target cell. This particular problem might be countered by providing a larger pre-configured playback buffer. This will however cause another problem with data resource waste due to the user abandoning the media streaming before it has finished.
Some measures have been suggested to ameliorate problems associated with buffer underrun during handover, in [1] there is disclosed a scheme that increases the maximum size of a playback buffer of the client/User Equipment. In [2] there is disclosed a scheme where buffer is a client cache and which utilizes a corresponding network function to control and fill the client cache. This suggested scheme relies on the caching functionality and is used during situations with un-used capacity.
The proposed technology aims to provide a mechanism that at least mitigate some of the above mentioned drawbacks within the technical field.